/* Copyright (C) 2003, Charles Wang.
 * Author:  Charles Wang <charles@linux.net.cn>
 * All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation; either version 2, or (at your option) any later
 * version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANT; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public LIcense for more
 * details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, 59 Temple
 * Place - Suite 330, Boston, MA 02111-1307, USA.
 */
#ifndef  __NEWTUTILS_H__
#define  __NEWTUTILS_H__

#include  <newt.h>

#if !defined(NONEWT)
typedef struct {
    newtGrid       grid;
    newtComponent  entry;
    int            v0, v1, v2, v3;
}   ipinput;

void  ipinput_create(ipinput *ii, const char *title, const char *defvalue);
void  ipinput_get_ip(ipinput *ii, char *result);
#endif  /* NONEWT */

ssize_t newt_copy_file(int readfd, int writefd, ssize_t len,
		  const char *title, const char *filename);

#if !defined(NONEWT)
newtComponent newtExtForm(newtComponent vertBar, void * helpTag, int flags);
newtComponent newtExtRunForm(newtComponent form);
void newtWinStatus(int width, int height, char * title, char * text, ...);
#else  /* NONEWT */
char read_key(const char *prompt, char key_min, char key_max, char key_default);
void wait_enter_key(void);

#endif  /* NONEWT */

#endif
